package cn.ac.zing.api.enums;

/**
 * @Author：dcy
 * @name：FactorEnum
 * @Date：2024/5/19 19:42
 */
public enum FactorEnum {
    /**
     * AQI
     */
    AQI("a10013", 0),
    /**
     * 综合指数
     */
    ZHZS("a10014", 0),
    /**
     * 温度
     */
    WD("a01001", 0),
    /**
     * 湿度
     */
    SD("a01002", 0),
    /**
     * 风速
     */
    FS("a01006", 0),
    /**
     * 风向
     */
    FX("a01007", 0),
    /**
     * 气压
     */
    QY("a01008", 0),
    /**
     * 硫化氢
     */
    LHQ("a21028", 0),
    /**
     * 氨气
     */
    AQ("a21001", 0),
    /**
     * TSP
     */
    TSP("a34001", 0),
    /**
     * PM10
     */
    PM10("a34002", 0),
    /**
     * PM2.5
     */
    PM25("a34004", 0),
    /**
     * SO2
     */
    SO2("a21026", 0),
    /**
     * NO2
     */
    NO2("a21004", 0),
    /**
     * CO
     */
    CO("a21005", 3),
    /**
     * O3
     */
    O3("a10006", 0),
    /**
     * COD
     */
    COD("w01018", 2),
    /**
     * 氨氮
     */
    AD("w21003", 2),
    /**
     * 总磷
     */
    ZL("w21011", 2),
    /**
     * 总氮
     */
    ZD("w21001", 2),
    /**
     * 烟尘
     */
    YC("a34013", 1),
    /**
     * 氮氧化物
     */
    DYHW("a21002", 1),
    /**
     * 烟气压力
     */
    YQYL("a01013", 1),
    /**
     * 烟道截面积
     */
    YDJMJ("a01016", 1),
    /**
     * 制冷温度
     */
    JLWD("a01015", 1),
    /**
     * 烟气湿度
     */
    YQSD("a01014", 1),
    /**
     * 烟气动压
     */
    YQDY("a01017", 1),
    /**
     * 烟气温度
     */
    YQWD("a01012", 1),
    /**
     * 烟气流速
     */
    YQLS("a01011", 1),
    /**
     * 氧气含量
     */
    YQHL("a19001", 1),
    /**
     * PH
     */
    PH("w01001", 1),
    /**
     * 水温
     */
    SW("w01010", 0),
    /**
     * 溶解氧
     */
    HYL("w01009", 2),
    /**
     * 电导率
     */
    DDL("w01014", 0),
    /**
     * 浊度
     */
    ZDTB("w01003", 2),
    ;

    public String code;
    public int scale;

    private FactorEnum(String code, int scale) {
        this.code = code;
        this.scale = scale;
    }

    public static int getScale(String factor) {
        for (FactorEnum factorEnum : FactorEnum.values()) {
            if (factorEnum.code.equals(factor)) {
                return factorEnum.scale;
            }
        }
        return 2;
    }
}
